﻿using log4net;
using PcaCore.BOL.Tablas;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;

namespace PcaCore.DAL.Tablas
{
    public class dTTipoDocumentoIdentidad
    {
        private static readonly ILog log = LogManager.GetLogger(typeof(dTMoneda));

        #region Public

        public static oVwTTipoDocumentoIdentidad Get(string tipoDocumentoIdentidadId)
        {
            try
            {
                //CREATE OR REPLACE FUNCTION pca_tablas.fn_get_tipo_documento_identidad(varchar --codigo $1
                //                      )RETURNS SETOF pca_tablas.vw_tipos_documentos_identidad
                return Core.GetObjectDb<oVwTTipoDocumentoIdentidad>("pca_tablas.fn_get_tipo_documento_identidad",
                                                                    new oParametro(NpgsqlTypes.NpgsqlDbType.Varchar, tipoDocumentoIdentidadId)); 
            }
            catch (Exception ex)
            {
                throw Core.LogException(log, ex, MethodBase.GetCurrentMethod().Name);
            }
        }

        public static List<oVwTTipoDocumentoIdentidad> GetList()
        {
            try
            {
                //CREATE OR REPLACE FUNCTION pca_tablas.fn_get_list_tipos_documentos_identidad()RETURNS SETOF pca_tablas.vw_tipos_documentos_identidad
                return Core.GetListObjecstDb<oVwTTipoDocumentoIdentidad>("pca_tablas.fn_get_list_tipos_documentos_identidad");
            }
            catch (Exception ex)
            {
                throw Core.LogException(log, ex, MethodBase.GetCurrentMethod().Name);
            }
        }

        #endregion
    }
}
